﻿using System;
using System.Collections.Generic;

using System.Xml.Linq;

namespace PIT.Labs.ProjectRepository.Owl2DotNet.Rdf
{
    class RdfAnnotationProperty : RdfEntityBase, IAnnotationProperty
    {
        public RdfAnnotationProperty(XElement node, RdfOntology o)
            : base(node, o)
        {
            o.Insert(this);
        }

        protected RdfAnnotationProperty(RdfOntology o) : base(o)
        {
        }

        public IAnnotationProperty SubProperties
        {
            get { throw new NotImplementedException(); }
        }

        public IAnnotationProperty SuperProperties
        {
            get { throw new NotImplementedException(); }
        }

        public IEnumerable<IEntity> Domain
        {
            get { return null; }
        }

        public PropertyCharacteristics Characteristics
        {
            get { return PropertyCharacteristics.None; }
        }

        public IEnumerable<IDataType> Range
        {
            get { return new IDataType[] { RdfOntology.DataTypeGeneric }; }
        }
    }
}
